#pragma once
#include <string>
#include <Ogre.h>
class AbstractObject
{
public:
	AbstractObject(void);
	~AbstractObject(void);
	
	void setMesh(const std::string& meshName, Ogre::SceneManager* pSceneMgr);
	void setMaterial(const std::string& materialName);
	void setPosition(Ogre::Vector3 pos);
	Ogre::Vector3 getPosition(void);
	void setScale(Ogre::Vector3 scale);
	void setRotation(Ogre::Radian angle);
	void setShadowCaster(bool castShadows);
protected:
	Ogre::Entity* mpEntity;
	Ogre::SceneNode* mpNode;
};